Apparatus and method for positioning windows on a display

ABSTRACT

A method for positioning a window on a user&#39;s display may include providing, in a window-based computing environment, an image representing a display area of a user&#39;s computer screen. This image may be divided into a plurality of regions. Each region may represent an area within the display area. The method may further include enabling a user to select a region from the plurality of regions, such as, for example, with a mouse click, keystroke, keystroke combination, or the like. The method may then include automatically moving a window, such as the active window, in the window-based computing environment to the area represented by the region.

BACKGROUND

Field of the Invention

This invention relates to apparatus and methods for positioning windowsin a window-based computing environment.

Description of the Related Art

When it comes to establishing a more comfortable, efficient, and fastercomputing environment, the computer monitor may easily be the mostimportant output device of a user's computer system. In a time when mostcomputer components are getting smaller, many believe that bigger isbetter when it comes to monitors. A larger and higher resolution monitorcan reduce eyestrain and increase productivity by allowing a user toview multiple applications simultaneously or view an entire document,spreadsheet, or image without needing to use directional arrows. Forthis reason, many individuals now build computer systems with multiplemonitors despite the fact that the setup may require multiple videocards and cords and leave visual obstructions (i.e., bezels) runningthrough the user's visual workspace.

Fortunately, monitors continue to get bigger and bigger with everincreasing resolutions. For example, at the time of drafting thisdisclosure, Dell® is now marketing a 30″ LCD computer monitor with aresolution of 2560×1600 pixels. Apple® has released a monitor of similardimensions and specifications. It is not difficult to anticipatecomputers monitors reaching 40″ or more, providing a user with a vastamount of useable real estate.

These large screens allow a user to more closely simulate a real-life“desktop” by enabling the user to view multiple files or documents(i.e., “windows”) simultaneously. For example, a user may find itadvantageous to simultaneously view multiple electronic resourcedocuments, web pages, images, spreadsheets, or the like while working ona research paper or article, without having to toggle between multiplewindows. The ability to view multiple documents simultaneously may alsoaid considerably in moving to a paperless office. Monitors will mostlikely continue to increase in both size and resolution, creating a needto more effectively manage and utilize the additional real estate.

Presently, “windows” in the Windows® operating systems include theubiquitous “close,” “restore down,” “maximize,” and “minimize” buttonsnear the upper right corner of each window. While useful, these buttonsdo not enable a user to efficiently position windows at desiredlocations on the user's computer screen. For example, to get a window tosimply cover the left side of a user's computer screen, the user mayneed to click the “restore down” button, drag the window until the topleft corner of the window coincides with the top left corner of thescreen, and then manually resize the window to fill the left side of thescreen. Even after completing this process, some windows may stilloverlap or not be positioned exactly as desired by a user.

Alternatively, Windows® provides the “Tile Windows Vertically,” “TileWindows Horizontally,” and “Cascade Windows” commands which areaccessible from the Windows taskbar. However, these commands are not asintuitive as they could be and they do not provide a desired level ofcontrol when positioning windows. For example, to get a window to coverthe left half of the user's screen, a user would need to open exactlytwo windows (and make sure neither is minimized) and then select “TileWindows Vertically” from the taskbar. Alternatively, if more than twowindows are open, the user would need to minimize all but two windowsand then select “Tile Windows Vertically.” Because a user may have manywindows open at any given time, any number of which may or may not beminimized, this process may be cumbersome, unintuitive, andtime-consuming.

Other third-party window positioning programs may require a user toinitially select from a number of different window patterns. The usermay then need to link different applications or windows with regions inone of the window patterns. The program may then position the windows orapplications in the corresponding regions of the screen corresponding tothe pattern. Such a method for positioning windows is cumbersome andunintuitive. Consequently, some users may choose to forego using suchprograms altogether.

In view of the foregoing, what is needed is an apparatus and method formore efficiently and intuitively organizing and positioning windows in auser's desktop environment. Ideally, such an apparatus and method wouldmore closely mimic the way a user organizes a real physical desktop.Such an apparatus and method would also ideally be simple and mayaugment, rather than replace or alter, the “maximize,” “minimize,” and“restore down” buttons familiar to Windows users. Further needed areapparatus and methods to provide a user a greater level of control whenpositioning windows.

SUMMARY

The present invention has been developed in response to the presentstate of the art, and in particular, in response to the problems andneeds in the art that have not yet been fully solved by currentlyavailable window sizing and positioning systems. Accordingly, thepresent invention has been developed to provide a novel apparatus andmethod for positioning windows on a user's display in a window-basedcomputing environment.

In a first embodiment of the invention, a method for positioning windowson a user's display may include providing, in a window-based computingenvironment, an image representing a display area of a user's computerscreen. This image may be divided into a plurality of regions. Eachregion may represent an area within the display area. The method mayfurther include enabling a user to select a region from the plurality ofregions with a mouse click, keystroke, keystroke combination, or thelike. The method may then include automatically moving a window, such asthe active window in the window-based computing environment, to the arearepresented by the region.

In certain embodiments, the image may be provided at the prompting of auser by clicking an icon, button, menu item, or by hitting a quick-key,key combination, or the like. Once the user selects a region from theimage, the method may include automatically hiding the image from theview of the user.

In certain embodiments, the method may include enabling a user to selectmore than one region from the plurality of regions. For example, a usermay desire to have a window cover an area represented by multipleregions. When a user selects multiple regions, the method mayautomatically move a window in the window-based computing environment tothe area corresponding to the multiple regions.

In selected embodiments, the images may be one of a plurality of imagescorresponding to different computer screens of the user. For example, ifa user is using multiple monitors, an image may be provided for eachmonitor and the selection of a region within one of the images may beused to move a window to a specific area on a specific display.

The image may appear in various locations on the user's screen to makeit convenient to access. For example, the image may be provided near anupper right hand corner of the window, a mouse pointer of the user, or asystem tray of the window-based computing environment.

In another embodiment of the invention, an apparatus for positioningwindows on a user's display may include a presentation module todisplay, in a window-based computing environment, an image representinga display area of a user's computer screen. The image may be dividedinto a plurality of regions. Each region may represent an area withinthe display area. A selection module may be provided to enable a user toselect a region from the plurality of regions. A positioning module maybe provided to automatically move a window in the window-based computingenvironment to the area represented by the region. Each of these modulesmay be implemented in hardware, software, or combinations thereof.

In certain embodiments, the apparatus may further include an initiationmodule to trigger operation of the presentation module at the promptingof a user and a concealment module to automatically hide the image whenthe user selects a region. In selected embodiments, the selection modulemay be configured to enable a user to select more than one region fromthe plurality of regions. In such embodiments, the positioning modulemay be configured to automatically move a window to the area representedby the multiple regions.

In certain embodiments, the presentation module may be configured todisplay a plurality of images, each corresponding to a differentcomputer screen of the user. The presentation module may also beconfigured to display the image proximate at least one of the upperright hand corner of the window, a mouse pointer of the user, and asystem tray of the window-based computing environment.

In another embodiment of the invention, a computer-readable medium isdisclosed to store a program of machine-readable instructions executableby a computer to perform operations to position a window on a user'sdisplay. Such operations may include providing, in a window-basedcomputing environment, an image representing a display area of a user'scomputer screen. The image may be divided into a plurality of regions,with each region representing an area within the display area. Theoperations may further include enabling a user to select a region fromthe plurality of regions. The operations may further includeautomatically moving a window in the window-based computing environmentto the area represented by the region.

The present invention provides a novel apparatus, method, and article ofmanufacture for positioning windows on a user's display. The featuresand advantages of the present invention will become more fully apparentfrom the following description and appended claims, or may be learned bythe practice of the invention as set forth hereinafter.

BRIEF DESCRIPTION OF THE DRAWINGS

In order that the advantages of the invention will be readilyunderstood, a more particular description of embodiments of theinvention briefly described above will be rendered by reference tospecific embodiments illustrated in the appended drawings. Understandingthat these drawings depict only typical embodiments of the invention andare not therefore to be considered limiting of its scope, the inventionwill be described and explained with additional specificity and detailthrough the use of the accompanying drawings, in which:

FIG. 1 shows one contemplated embodiment of a menu to enable a user toposition a window at a desired position on a display;

FIG. 2 shows another contemplated embodiment of a menu on a user'sdisplay;

FIG. 3 shows another contemplated embodiment of a menu on a user'sdisplay;

FIG. 4 shows one embodiment of a menu to work with multiple monitors;

FIG. 5 shows another embodiment of a menu to work with multiplemonitors;

FIGS. 6A and 6B show one embodiment of a menu enabling a user to selectmultiple regions in an image;

FIG. 7 shows another embodiment of a menu enabling a user to selectmultiple regions in an image;

FIG. 8 shows various different window patterns that may be created withone embodiment of a menu in accordance with the invention; and

FIG. 9 shows one embodiment of an apparatus in accordance with theinvention.

DETAILED DESCRIPTION

It will be readily understood that the components of the presentinvention, as generally described and illustrated in the Figures herein,may be arranged and designed in a wide variety of differentconfigurations. Thus, the following more detailed description ofembodiments of apparatus and methods in accordance with the invention,as represented in the Figures, is not intended to limit the scope of theinvention, as claimed, but is merely representative of selectedembodiments in accordance with the invention.

One or more of the functional units described in this specification havebeen labeled as modules in order to more particularly emphasize theirimplementation independence. For example, a module may be implemented asa hardware circuit comprising custom VLSI circuits or gate arrays,off-the-shelf semiconductors such as logic chips, transistors, or otherdiscrete components. A module may also be implemented in programmablehardware devices such as field programmable gate arrays, programmablearray logic, programmable logic devices or the like.

Modules may also be implemented in software for execution by varioustypes of processors. An identified module of executable code may, forinstance, comprise one or more physical or logical blocks of computerinstructions which may, for instance, be organized as an object,procedure, or function. Nevertheless, the executables of an identifiedmodule need not be physically located together, but may comprisedisparate instructions stored in different locations which, when joinedlogically together, comprise the module and achieve the stated purposefor the module.

Indeed, a module of executable code could be a single instruction, ormany instructions, and may even be distributed over several differentcode segments, among different programs, and across several memorydevices. Similarly, operational data may be identified and illustratedherein within modules, and may be embodied in any suitable form andorganized within any suitable type of data structure. The operationaldata may be collected as a single data set, or may be distributed overdifferent locations including over different storage devices, and mayexist, at least partially, merely as electronic signals on a system ornetwork.

Reference throughout this specification to “one embodiment,” “anembodiment,” or similar language means that a particular feature,structure, or characteristic described in connection with the embodimentmay be included in at least one embodiment of the present invention.Thus, appearances of the phrases “in one embodiment” or “in anembodiment” in various places throughout this specification are notnecessarily all referring to the same embodiment.

Furthermore, the described features, structures, or characteristics maybe combined in any suitable manner in one or more embodiments. In thefollowing description, specific details are provided, such as examplesof programming, software modules, user selections, etc., to provide athorough understanding of embodiments of the invention. One skilled inthe relevant art will recognize, however, that the invention may bepracticed without one or more of the specific details, or with othermethods, components, etc. In other instances, well-known structures, oroperations are not shown or described in detail to avoid obscuringaspects of the invention.

The illustrated embodiments of the invention will be best understood byreference to the drawings, wherein like parts are designated by likenumerals throughout. The following description is intended only by wayof example, and simply illustrates certain selected embodiments ofapparatus and methods that are consistent with the invention as claimedherein.

Referring to FIG. 1, as mentioned, the Windows® operating system as wellas other window-based computing environments may enable a user tosimulate a real-life “desktop” by enabling the user to simultaneouslyopen multiple files or documents in different windows. These windows maybe used to display a varied assortment of applications and files such aselectronic documents, web pages, images, spreadsheets, as well as a hostof other different files and applications. FIG. 1 shows one example of awindow 16, in this case an electronic word-processing applicationcontaining an open document.

Presently, most windows 16 displayed in the Windows® operating systemsinclude the ubiquitous “close” button 10, “restore down” button 12(which changes to a maximize button 12 when the restore down feature isused), and “minimize” button 14 near the upper right-hand corner of eachwindow 16. As mentioned previously, these buttons do not enable a userto efficiently position windows 16 or provide the user with a desiredlevel of control when positioning windows 16 on the user's screen(display). Furthermore, although the Windows® task bar 26 may enable auser to effectively toggle between windows, it does not provideeffective functionality to view multiple windows simultaneously with adesired arrangement and placement.

To improve efficiency and provide the user with an improved level ofcontrol, in selected embodiments, a palette 18, or menu 18, may beprovided that includes one or more images 20 a-d. Each image 20 a-d mayrepresent a display area of a user's computer screen and may be dividedinto a plurality of regions 22. Each region may represent an area withinthe display area. The regions 22 may be used to divide the user's screeninto halves, thirds, quarters, sixths, or the like. A user may selectone or more of the regions 22 with a mouse click, keystroke, keystrokecombination, or the like. This action may automatically move a window16, such as the active window, to the area of the screen represented bythe region.

For example, a mouse click on the region 22 a may automatically move thewindow 16 to the left half of the user's computer screen. Similarly, amouse click on the region 22 b may automatically move the window 16 tothe upper left-hand quarter of the user's computer screen, and so forth.In certain embodiments, once the window 16 is positioned and sized tocorrespond to a desired region 22, the window may be maximized and thenreturned to the same region 22 by simply clicking the restore downbutton 12. Thus, the system may be designed to remember which region 22was last selected when using the restore down feature.

In certain embodiments, the regions 22 may be configured to change coloror shade when the user moves a mouse pointer over the regions 22, asshown by region 22 a. This will help the user know that he or she isselecting the desired region 22 or regions 22 prior to clicking themouse.

In certain embodiments, the menu 18 and corresponding images 20 a-d mayappear at the prompting of a user. For example, in selected embodiments,the menu 18 may appear by clicking a new button 24, such as a button 24positioned near the standard Windows® buttons 10, 12, 14. In otherembodiments, the menu 18 may be configured to appear upon left-clickingan existing or standard windows button such as the restore down (ormaximize) button 12. In yet other embodiments, a quick-key or keycombination may be used to reveal the menu 18. The menu 18 may appear atvarious locations on the screen, including at or near the top right-handcorner of a window 16 or at a location at or near the user's verticalmouse height, as shown in FIG. 2. This prevents the user from having tomove his or her mouse pointer a substantial distance, thereby improvingefficiency. In other embodiments, the menu 18 may appear by clicking anicon such as a system tray icon 30 as illustrated in FIG. 3. The aboveexamples represent just a few examples of how and where the menu 18could be made to appear and is not intended to limit the invention tothe foregoing examples.

Once the user selects one or more regions 22 from the image 20, thewindow 16 may be moved to the area of the screen represented by theselected region 22 and the menu 18 may disappear from the view of theuser.

In selected embodiments, the images 20 a-d and corresponding regions 22that are provided may be those deemed to be most commonly needed ordesired (e.g., halfs, thirds, quarters, sixths, etc.). As monitorscontinue to grow, smaller divisions (e.g., eighths, etc.) may be desiredand included in the menu 18.

Referring to FIG. 4, in selected embodiments, the menu 18 may beconfigured to work with a computer system having multiple monitors. Forexample, a first set 40 a of images 42 a, 42 b may be configured toposition a window 16 on a first monitor, a second set 40 b of images 42c, 42 d may be configured to position a window 16 on a second monitor,and a third set 40 c of images 42 e, 42 f may be configured to positiona window 16 on a third monitor. For example, selection of the region 44may move a window 16 to the left half of the first monitor, and soforth. Thus, the menu 18 may be configured to work with a multiplemonitor setup.

Referring to FIG. 5, in other embodiments, a two-stage menu system maybe used to position windows across a multiple monitor setup. Forexample, a first menu 50 may be used to select a monitor from multiplemonitors. A second menu 52, which may appear after making a selection onthe first menu 50, may be used to select the location of a window 16 onthe selected monitor. Thus, if a user selects the first monitor on thefirst menu 50, and then selects the region 54 on the second menu 52, thesystem may automatically position a window 16 over the lower right-handquarter of the user's first computer screen.

Referring to FIGS. 6A, 6B, and 7, as mentioned, in selected embodiments,an image 20 may be configured to enable a user to select more than oneregion. That is, a user may desire to have a window cover an arearepresented by multiple regions. For example, if an image 20 divides thescreen into thirds, like the image 20 illustrated in FIG. 6A, the usermay wish to position a window over the left two thirds of the screen. Todo so, the image 20 may be configured to enable the user to select theleft two regions 60 a, 60 b simultaneously.

For example, as shown in FIG. 6A, the image 20 may enable a user toclick a first region 60 a. While holding the mouse button down, the usermay drag the mouse pointer 62 across to the adjacent region 60 b, asshown in FIG. 6B. The user may then release the mouse button toautomatically resize and position the window 16 over the left two thirdsof the user's computer screen. As shown in FIGS. 6A and 6B, each region60 a, 60 b may change color or shade as the user clicks and drags acrossthe regions 60 a, 60 b, thereby allowing the user to see that he or sheis selecting the desired regions. Each of the images, as shown forexample in FIG. 1, may enable the user to select any number of regionswithin each image, assuming that any such selection forms a rectangularshape.

Referring to FIG. 7, in another contemplated embodiment, multipleregions 60 a, 60 b may be selected by positioning the tip of the mousepointer 62 at or near a boundary 64 between multiple regions 60 a, 60 b.This action may change the shape or color of the regions 60 a, 60 b,letting the user know that he or she is selecting multiple regions. Amouse click near the boundary 64 may then position a window 16 over thearea of the screen represented by the regions 60 a, 60 b.

Referring to FIG. 8, the menu system disclosed herein may be used tocreate a wide variety of window patterns on a user's screen. Forexample, the illustrated menu 18 may be used to create any of thepatterns 82 by selecting various regions on the menu 18. If the menu 18is also configured to enable a user to select multiple regions (asillustrated in FIGS. 6A, 6B, and 7), a host of other patterns 84 arealso possible, including others that are not shown. In reality, if themenu 18 allows the user to select multiple regions, only the bottom twoimages 86 of the menu 18 are needed to produce any of the patterns shownin FIG. 8, including many that are not shown. Thus, the menu 18 mayprovide a significant amount of versatility when positioning and sizingwindows 16.

Referring to FIG. 9, in selected embodiments, an apparatus 90 forimplementing a menu 18 in accordance with the invention may includevarious modules 92-104. These modules may be implemented in hardware,software, firmware, or a combination thereof, but most likely will beimplemented as software modules. The apparatus 90 does not necessarilyinclude all of the modules 92-104, but may include additional or fewermodules than those illustrated. Furthermore the modules 92-104 are notnecessarily organized as illustrated but simply show various functionsthat may be provided by a menu 18 in accordance with the invention.

In certain embodiments, the apparatus 90 may include an initiationmodule 92 to initiate the menu 18 in response to user action. Forexample, the initiation module 92 may initiate the menu 18 when the userclicks an icon, button, or manually presses a button or hits a quick keyor key combination. A presentation module 94 may be used to present andprovide the look and feel of the menu 18 displayed on the user'scomputer screen. In selected embodiments, the presentation module 94 mayinclude a mapping module 108 to map each of the regions 22 presented inone or more images 20 to areas of the user's computer screen. In certainembodiments, the mapping module 108 may function by determining theresolution of the user's screen (e.g., 1200×1600, 1280×1024, etc.) andthen dividing the useable space into areas corresponding to each ofregions 22. These areas may then be mapped to the regions 22 such thatselection of a region 22 will move a window to the area(s) representedby the region(s). In selected embodiments, the presentation module 94may also provide support for a single monitor 110 or multiple monitors112, as was discussed in association with FIGS. 4 and 5. In selectedembodiments, the presentation module 94 may be configured to detect thenumber and configuration of monitors on the user's computer system andtailor the menu 18 accordingly.

In certain embodiments, a selection module 96 may enable a user toselect regions 22 on the menu 18 by way of a mouse click, key stroke,key combination, button press, or the like. The selection module 96 mayenable the user to select a single region 114, or multiple regions 116as was discussed in association with FIGS. 6A through 7. The ability toselect multiple regions 22 may provide additional versatility to theuser and allow the user to arrange windows in patterns that would nototherwise be possible selecting a single region.

A positioning module 98 may be provided to position the menu 18 at adesired area of the user's computer screen. For example, the positioningmodule 98 may position the menu 18 proximate the upper right hand cornerof a window 16, at or near the vertical mouse height of the user,proximate a system tray icon, or the like. A concealment module 100 mayconceal the menu 18 from the user's view once the user has selected oneor more regions 22 in the menu 18.

In selected embodiments, the apparatus 90 may also include an editormodule 102 and a settings module 104. The editor module 102 may allow auser to select the type and number of images 20 that a user would likedisplayed on the menu 18. For example, the user may only want images 20that he or she uses most often, such as images that divide the screeninto quarters or sixths for display on the menu 18. In otherembodiments, the editor module 102 may allow the user to design thelayout and dimensions of the regions 22 of the images 20. A settingsmodule 104, on the other hand, may enable a user to select preferenceswith regard to colors used for the menu 18, desired position ordimensions of the menu 18 on the user's computer screen, desired methodfor initiating the menu 18, transparency of the menu 18, or the like.Other settings are also possible and are intended to be captured withinthe scope of the invention.

One of skill in the art will recognize that the apparatus and methodsdisclosed herein are not limited to physical screens or displays but mayalso be used with virtual screens or displays. For example, a virtualscreen or display may be located within or be a subset of a physicalscreen or display, such as where the Windows® operating system isemulated within a window of another operating system. Thus, the menu 18may be used to organize windows within a virtual screen or display.Furthermore, the menu 18 may also be used to organize windows withinparticular applications. For example, various applications, such asAdobe Acrobat®, allow a user to open up several documents in sub-windowswithin a larger window. These sub-windows may be minimized, maximized,or the like within the larger window. In certain embodiments, the menu18 may be used to organize the sub-windows within the larger window.Thus, for the purpose of this description, the terms “display,”“screen,” or “display area” are used broadly to encompass each of theseembodiments.

The present invention may be embodied in other specific forms withoutdeparting from its spirit or essential characteristics. The describedembodiments are to be considered in all respects only as illustrativeand not restrictive. The scope of the invention is, therefore, indicatedby the appended claims rather than by the foregoing description. Allchanges which come within the meaning and range of equivalency of theclaims are to be embraced within their scope.

The invention claimed is:
 1. A method for positioning a window on auser's display, the method comprising: providing, in a window-basedcomputing environment, an image representing a display area of a user'scomputer screen, wherein the image comprises a plurality of regions,each region representing an area within the display area, wherein theregions are arranged in substantially the same way as the correspondingareas in the display area; enabling the user to select, as a group,multiple regions from the plurality of regions; and automaticallymoving, in accordance with the selection, a selected window in thewindow-based computing environment to the area represented by themultiple regions.
 2. The method of claim 1, wherein providing comprisesproviding at the prompting of a user.
 3. The method of claim 1, whereinthe selected window is the active window in the window-based computingenvironment.
 4. The method of claim 1, further comprising automaticallyhiding the image when the user selects the multiple regions.
 5. Themethod of claim 1, wherein enabling the user to select the multipleregions comprises enabling the user to drag a pointer across themultiple regions.
 6. The method of claim 5, wherein the pointer is amouse pointer.
 7. The method of claim 1, wherein the image is one of aplurality of images, wherein selected images of the plurality of imagescorrespond to different computer screens of the user.
 8. The method ofclaim 1, wherein the image is provided proximate at least one of theupper right hand corner of the window, a mouse pointer of the user, anda system tray of the window-based computing environment.
 9. An apparatusfor positioning a window on a user's display, the apparatus comprising:at least one processor; and at least one memory device coupled to the atleast one processor and storing instructions for execution on the atleast one processor, the instructions causing the at least one processorto: display, in a window-based computing environment, an imagerepresenting a display area of a user's computer screen, wherein theimage comprises a plurality of regions, each region representing an areawithin the display area, wherein the regions are arranged insubstantially the same way as the corresponding areas in the displayarea; enable the user to select, as a group, multiple regions from theplurality of regions; and automatically move, in accordance with theselection, a selected window in the window-based computing environmentto the area represented by the multiple regions.
 10. The apparatus ofclaim 9, wherein the instructions further trigger display of the imageat the prompting of a user.
 11. The apparatus of claim 9, wherein theselected window is the active window in the window-based computingenvironment.
 12. The apparatus of claim 9, wherein the instructionsfurther automatically hide the image when the user selects the multipleregions.
 13. The apparatus of claim 9, wherein selecting the multipleregions comprises dragging a pointer across the multiple regions. 14.The apparatus of claim 13, wherein the pointer is a mouse pointer. 15.The apparatus of claim 9, wherein the instructions further display aplurality of images, wherein selected images of the plurality of imagescorrespond to different computer screens of the user.
 16. The apparatusof claim 9, wherein the instructions further display the image proximateat least one of the upper right hand corner of the window, a mousepointer of the user, and a system tray of the window-based computingenvironment.
 17. A non-transitory computer-readable medium storing aprogram of machine-readable instructions executable by a computer toperform operations to position a window on a user's display, theoperations comprising: providing, in a window-based computingenvironment, an image representing a display area of a user's computerscreen, wherein the image comprises a plurality of regions, each regionrepresenting an area within the display area, wherein the regions arearranged in substantially the same way as the corresponding areas in thedisplay area; enabling the user to select, as a group, multiple regionsfrom the plurality of regions; and automatically moving, in accordancewith the selection, a selected window in the window-based computingenvironment to the area represented by the multiple regions.
 18. Thenon-transitory computer-readable medium of claim 17, wherein providingcomprises providing at the prompting of a user.
 19. The non-transitorycomputer-readable medium of claim 17, wherein the selected window is theactive window in the window-based computing environment.
 20. Thenon-transitory computer-readable medium of claim 17, wherein the imageis one of a plurality of images, wherein selected images of theplurality of images correspond to different computer screens of theuser.